package com.ruoyi.project.emr.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 药品项目对象 emr_drug
 * 
 * @author gzu
 * @date 2023-07-22
 */
public class EmrDrug extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 药品主键 */
    private Long id;

    /** 药品编号 */
    @Excel(name = "药品编号")
    private String code;

    /** 名称 */
    @Excel(name = "名称")
    private String name;

    /** 通用名称 */
    @Excel(name = "通用名称")
    private String genericName;

    /** 规格 */
    @Excel(name = "规格")
    private String specification;

    /** 制造商 */
    @Excel(name = "制造商")
    private String manufacturer;

    /** 批准文号 */
    @Excel(name = "批准文号")
    private String approvalNumber;

    /** 生产日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 有效期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expirationDate;

    /** 存储条件 */
    @Excel(name = "存储条件")
    private String storageConditions;

    /** 适应症 */
    @Excel(name = "适应症")
    private String disease;

    /** 单价 */
    @Excel(name = "单价")
    private BigDecimal price;

    /** 剂型 */
    @Excel(name = "剂型")
    private String dosageForm;

    /** 分类 */
    @Excel(name = "分类")
    private String type;

    /** 成分 */
    @Excel(name = "成分")
    private String ingredients;

    /** 库存 */
    @Excel(name = "库存")
    private Long stock;

    /** 供应状态 */
    @Excel(name = "供应状态")
    private Long status;

    /** 使用说明 */
    @Excel(name = "使用说明")
    private String usageInstructions;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCode(String code) 
    {
        this.code = code;
    }

    public String getCode() 
    {
        return code;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setGenericName(String genericName) 
    {
        this.genericName = genericName;
    }

    public String getGenericName() 
    {
        return genericName;
    }
    public void setSpecification(String specification) 
    {
        this.specification = specification;
    }

    public String getSpecification() 
    {
        return specification;
    }
    public void setManufacturer(String manufacturer) 
    {
        this.manufacturer = manufacturer;
    }

    public String getManufacturer() 
    {
        return manufacturer;
    }
    public void setApprovalNumber(String approvalNumber) 
    {
        this.approvalNumber = approvalNumber;
    }

    public String getApprovalNumber() 
    {
        return approvalNumber;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setExpirationDate(Date expirationDate) 
    {
        this.expirationDate = expirationDate;
    }

    public Date getExpirationDate() 
    {
        return expirationDate;
    }
    public void setStorageConditions(String storageConditions) 
    {
        this.storageConditions = storageConditions;
    }

    public String getStorageConditions() 
    {
        return storageConditions;
    }
    public void setDisease(String disease) 
    {
        this.disease = disease;
    }

    public String getDisease() 
    {
        return disease;
    }
    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }
    public void setDosageForm(String dosageForm) 
    {
        this.dosageForm = dosageForm;
    }

    public String getDosageForm() 
    {
        return dosageForm;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setIngredients(String ingredients) 
    {
        this.ingredients = ingredients;
    }

    public String getIngredients() 
    {
        return ingredients;
    }
    public void setStock(Long stock) 
    {
        this.stock = stock;
    }

    public Long getStock() 
    {
        return stock;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setUsageInstructions(String usageInstructions) 
    {
        this.usageInstructions = usageInstructions;
    }

    public String getUsageInstructions() 
    {
        return usageInstructions;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("code", getCode())
            .append("name", getName())
            .append("genericName", getGenericName())
            .append("specification", getSpecification())
            .append("manufacturer", getManufacturer())
            .append("approvalNumber", getApprovalNumber())
            .append("createDate", getCreateDate())
            .append("expirationDate", getExpirationDate())
            .append("storageConditions", getStorageConditions())
            .append("disease", getDisease())
            .append("price", getPrice())
            .append("dosageForm", getDosageForm())
            .append("type", getType())
            .append("ingredients", getIngredients())
            .append("stock", getStock())
            .append("status", getStatus())
            .append("usageInstructions", getUsageInstructions())
            .toString();
    }
}
